home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Free 4
/
Commodore_Free_Issue_04_2007_Commodore_Computer_Club.d64
/
t.xeon3 +4
< prev
Wrap
Text File
|
2023-02-26
|
10KB
|
352 lines
u
Xeon3 for the Commodore Plus 4
The ultimate plus 4 Shoot'em up
A cooperation work by Mike Dailly
and Luca Carrafiello (aka Luca/Fire)
- Plus/4: A Short Introduction -
Plus/4 never got a real game market,
'cause its c64 incompatibility early
discouraged both users and software
houses. How many dedicated programs
d'you remember for the Plus/4? Maybe
some games from Anco, "Ace" & "Ace 2"
from Cascade Game, "Mercenary" from
Novagen...and very few others.
In this sight, users (many from Eastern
Europe, especially Hungary) were
forced to sustain their beloved 8bit
system with selfproduced software;
and this choral initiative tooks to
create a Plus/4 'scene', surely smaller
compared to the C64 one but with higher
density of real coders.
Years passed and technology evolved
(mmm...sure?). C64 still lives thank to
a solid bunch of faithful guys, though
you feel the presence of C64 in the net
most of all 'cause lots of nostalgics &
computers' collectors. In few words: a
lot of retrocomputing but few retro-
coders! Talking about Plus/4, this
proportion decreases the actual amount
of coders to almost ZERO!
- XeO3 / Xenon Trioxide -
Err..not zero but ONE: sincerely, I
don't know why, but I can't stop
coding, drawing, composing on my
Plus/4. Years ago, I promised that
nothing and nobody will take me away
from my 8bit black box, nor if I'll
remain really alone in the scene.
Mike Dailly, (co-)author of many
games running on several machines
(from "Blood Money" on C64 to "F1
2000" on PSX) had to code something
nice for his homepage; he understood
that there weren't Plus/4 emulators in
the large emulation field on the net, &
started to code "Minus4", nowadays
one of the nicest Plus/4 emulators
available. And the best way to show it
surely is to code a cool action game
that runs on perfectly.
In order to accomplish it, Mike and me
have spent and will spend work time
stealing it from family, job (Mike),
study, job, university final work,
girlfriends (Luca): Mike has to
improve the emulator, write code and
waves editor, maybe sprite editor too;
I have to draw all graphics, compose
musics and fx, draw levels, animate
sprites.
- Will We Finish It? -
Follow the making of XeO3! Keep an
eye on this homepage and you'll know
if we will be able to create the
ultimate shoot'em'up game for the
mythic Commodore Plus/4! And if you
think you can do anything helping us,
from real participation to writing a
friendly supporting email, DO IT!
Attention: please don't be scandalized
by the poor, not technician
explications written in this chapter,
because the objective would be an easy
explication for everybody.
- Colours -
If you have just seen the "levels"
chapter and you said:"Pfh, so few
colours!", probably you are a C64 user.
At the moment I don't know if we'll
use different colours for background
graphics, or different coloured level
zones (do you remember C64's
Armalyte levels?), but it's almost sure
that sprites (your ship, ship's
explosions, enemies...) will be
coloured in the same colours, and
background too.
You must know that Plus/4 has no
hardware sprites!
Armalyte, Thalamus
In order to avoid talking too
technician, the C64 hardware sprite
management allows to use several
colours without clashes, as you can
see in the game screen extract to the
left.
Gwnn, Mastertronic Championship
Wrestling C16, US Gold
C16-Plus/4 games using sprites, then,
must:
-1) use same colours for sprites and
background (see figure 2);
-2) use several colours but accept the
consequent colour clash (see figure 3);
-3) use characters and not real sprites,
but we don't care here.
- Graphics & Memory -
OK, now we know that Plus/4 has no
hardware sprites...so, what can we do?
We can code a routine managing
software sprites. Using 2 character
banks, a part of one has to be used in
'mixing' our sprite with the actual
background characters which are
moving in that moment into its square
space. After overlapping the ship to
the background, the whole square will
be printed on the screen.
Do you noticed how much waste of
memory? The worst consequence is that
a big slice of the characters bank
(256 chars) has to be used for sprites.
If you think that another part of the
bank is occupied by pinned graphics
(broken turrets, explosion graphics for
turrets, weapons, fonts), you can
imagine in which little space we have
to condense both background and the
end level big enemy's graphics!
- Music & FX -
We will use for sure the SIDcard
technology. Plus/4 users know it since
years: the SIDcard permits you to
insert the famous C64 SID chip into
the black box. In this way, you can
listen cool music (not the poor TED
sound) without assigning too much
work to your CPU. Often, nowadays
any emulator shows its 'SIDcard on'
option.
If possible, I would insert a frequency
converter: your Plus/4 will read the 3-
voices music but it will play a channel
with a TED voice and both the
remaining two, quickly alternating,
with the second TED voice. Not much
quality...but you can hear it, what the
heck! It's quite fast and may be done.
Another ambitious solution has been
recently achieved: both SIDcard for the
music and TED sound for effects, with
adjustable indipendent volumes by
pressing keys F1/F2 and F3/HELP. If
nothing changes, that will be the
definitive solution.
At this point, the critical variable is
the space: how many musics can I
insert, is there enough space for the
frequency converter? Well, actually I
composed a whole 4K block for the 1st
level, & I'd found lotta difficulties,
because of the short memory: the
level's music can't be so complex as I
would, nor so much long in playtime.
So, I must direct my efforts toward the
melody and avoid complicate & original
sounds, that waste much memory. Some
precise valuations about game graphics
data can't now be for sure.
I used a dedicated editor working on
PC to assemble graphics into levels,
coded for me by FatMan. In order to
collect memory, a level is assembled
by 200 3x3 chars blocks; I had to draw
these blocks in the 3x3 editor (see
figure on the left), then use blocks to
compose screens in the map editor (see
figure on the right).
- Panel -
That's the 96 chars panel Mike consent
me to draw : a 40x4 chars panel on the
bottom, that will keep you informed
about your ingame actual situation:
ships left, score and coins you
collected. We prefer to have single
colour hires for alphabet (26) numbers
(10) ships (1) and coins bar (4),
because those are the indicators you'll
read in the meantime a new wave comes.
- Sprites -
They must be 16x16 (8x16 MCM) pixel
sized, 167 in all per level. You guess
it, a so sized sprite is a very little
one, and, trust me, it's very difficult
defining ships and other enemies with
so few pixels!
Sprites are also pickups and sprite
explosion. Here you can see the first
effort, enough to build up a playable
demo.
Ship Coin1 Coin2 Up Down Rear Smart
Laser Blade Ball Energy Boom Dude
- Weapons -
Apart of back fire & lateral ones, I'd
chosen frontal enhancing weapons only.
Soon, Mike understood that we can't
manage in the code large bullets, hence
I had to reduce their dimensions.
That's a real pity, I spent my effort
when I drew the big ones; moreover,
we're still looking for some decisive
variables that can give different
characteristics for any weapon
(shooting frequency, high power,
background overlapping...). We shall
see in the newar future, but let me
show a quick index of all weapons.
- Final Enemies -
The bigger enemies in the game had
been originally thought to be
chararcters' based. After the project
had begun a new life, the overall
rewriting of the code makes us wonder
they will be made of sprites assembled
together. This trashed all the
previously drawn enemies.
Hence, the final bosses will be drawn
with sprites, you will find at the end
of level, ready to blast you away.
Together with final bosses, ocasionally
the player will find some middle
level's bosses, not less dangerous of
the big ones. That's a preview of the
1st level's armoured guy.
- Intro Presentation Ending -
They should be done once the game is
finished. Theorically, I would draw a
short animated intro, a nice pic logo
(is a logo drawn in graphic mode, not
by characters), and an animated final.
The pic you're watching on the left is
the early one drawn for the game; it
never will appear in the game, 'coz
Mike judged it too 'empty'.
Time to play it unfair!
XeO3 will play SID music and native
TED sound fx in the same time, and
you'll get a real arcade game feeling
overall!
In the game's front end you can choose
your audio configuration, mixing TED
and SID stuff at your best to take all
the possible from your hardware.
There should be a good chance to have
frequency converted music through
TED device.
SID music plays from a Plus/4 via
SIDcard, a well known hardware
addon that plugs an 8580 SID chip
(newSID) into the expansion port.
At the moment, I composed the SID
tunes and fx, with my wonderful copy
of SidWinder V01.23 running on
Plus/4 (coded by TLC/Coroners, based
on the Taki/Natural Beat original C64
version; see figure on the left).
Believe me when I tell you it's hard to
fit the intro tune, the ingame
soundtrack and a couple of derived
jingles (end level and game over
jingles) in 4 Kilobytes only, but I
managed to do it for the first two
levels, and it worked with decent
results.
All the game's music can be heard in
streaming with the XeO3's blog.radio.
Click on the icon here to play all of
them.
Here you will keep an eye on actually
finished game levels.
We wonder about 8 levels, but it may
change.
Two levels had been declared as ready,
until we revised the whole project,
deciding to severely change both
levels.
Now, Level 1 had been completely
redesigned, in both graphics and
mapping.